package com.baitengsoft.patentapimonitor.api.service;

import com.baitengsoft.patentapimonitor.api.model.*;
import com.baitengsoft.patentapimonitor.api.model.param.WebMonitorYearsInfo;

import java.util.List;
import java.util.Map;

/**
 * @author Chen 2018/1/22
 */
public interface WebHomeService {
    /**
     * 当前有效
     */
    WebBaseAnalysisInfo getCurrentYxcount(Integer platformid);

    /**
     * 今年新增
     */
    WebBaseAnalysisInfo getXzcountYear(Integer platformid);

    /**
     * 获取今年新增授权
     */
    WebBaseAnalysisInfo getSqcountYear(Integer platformid);

    /**
     * 最近7年转入转出
     */
    List<WebMonitorYearsInfo> getInByYearRange(Integer platformid);

    /**
     * 【概览】获取失效专利原因
     * @param platformid
     * @return
     */
    List<WebInvalidReasonInfo> getInvalidReasonInfo(Integer platformid);

    /**
     * 【概览】获取失效专利总数
     * @param platformid
     * @return
     */
    int getInvalidPatCount(Integer platformid);

    /**
     * 获取专利总量
     */
    WebHomePatentSummaryInfo getPatCountSum(Integer platformid);

    /**
     * 权力人分析 1.当前有效量，2.专利总量"
     */
    List<WebApplicantAnalysisInfo> getApplicantAnalysis(Integer platformid, Integer dataTypeValue);

    /**
     * 万人有效发明指标分析【有效发明量】，【区域常住人口】，【万人有效发明专利拥有量】
     */
    WebIndicatorInfo getHomeIndicatorInfo(Integer platformid);

    /**
     * 首页月份信息
     */
    List<WebIndicatorMonthInfo> getIndicatorByMonth(Integer platformid);


    /**
     * 获取首页-相关统计信息
     * @param platformId
     * @return
     */
    WebStatisticsInfo getIndexStatisticsInfo(Integer platformId);


    /**
     * 首页--专利概况-统计信息
      * @param platformid
     * @return
     */
    List<WebStatisticsTotal> getIndexStatisticsTotal(Integer platformid);
}
